This invention relates generally to error detection and correction within an optical compact disk storage device. More particularly, this invention relates to a technique for counting errors of different types in an optical compact disk storage system.
In the past, the production of compact disks (CDs) and compact disk-read only memories (CD-ROMs) was the exclusive domain of mass production compact disk facilities. Compact disk manufacturers employ sophisticated equipment and procedures to verify the reliability of their compact disks. As is well known in the compact disk industry, all disks generate errors regardless of the quality control used in recording.
Referring to FIG. 1, there is shown a block diagram of a compact disk player in accordance with the prior art. Note that throughout the present description and the figures, like reference numerals designate like parts. Compact disk players and their variations including compact disk-recordable (CD-R) players and compact disk-rewritable (CD-RW) players rotate an optically encoded disk 102 using motor 104. Optical pickup 106 consists of a laser that directs light onto disk 102. Light is then reflected off the disk 102 and received by an optical sensor on optical pickup 106. Electrical digital data is then produced responsive to the optical reflections. Such digital data is sent to pre-amplifier 108 which is further electrically coupled to a servo control device 110 and a microprocessor 112. Signals from the servo control device 110 are further directed to the motor 104 and optical pickup 106. The various devices as shown in FIG. 1 thereby form a closed loop system for reading and/or writing optically encoded data. Microprocessor 112 may further be coupled to sound or visual producing devices as may be appropriate.
In order to produce binary signals from the reflected light, pits are produced on disk 102 to change the reflectivity of the disk. In a typical compact disk system, the width of pits on a compact disk is smaller than the wavelength of the light being used to detect the pits, thus compact disk systems are operating near the limits of physics. In the system of FIG. 1, the optical pickup 106 must stay focused within a range of less than 4 microns while moving with respect to the disk in both a vertical and horizontal manner. The optical pickup 106 must follow a spiral track of pits as it reads digital data from the compact disk. The servo control device 110 is a highly tuned and sophisticated servo control system used to focus the optical pickup 106, follow the track on the disk 102, control the motor 104 and handle timing issues within the pre-amplifier 108 and microprocessor 112 related to reading the digital data. The servo control device 110 is very sensitive and operates within very tight tolerances. Thus, even with very good disk media and very good data, many errors can occur as a result of the narrow tolerances within the mechanical operation of devices within the compact disk unit. Dust and residue on the disk may also cause errors. Moreover, errors may be generated by faulty software or firmware used to operate the mechanical devices.
Prior art compact disk systems have utilized various methods of error detection and correction but have not made full use of further information provided by the error detection and correction codes. Conventional methods of error correction and detection include C1 and C2 coding. Such an implementation is based on Cross Interleave Reed-Solomon Coding (CIRC). Although prior art systems have used error detection and correction to detect and correct errors, prior art systems have not provided detailed and specific information regarding the types and numbers of specific errors. Furthermore, with the advent of affordable CDs created on one""s desktop, there has been an increased need to provide a low-cost and convenient system of detecting the occurrence of errors and the determination of specific types of errors to further determine the source of the errors. Sources of errors can then be localized to the compact disk, the hardware used to read the data, the hardware used to write the data, or the digital source data among other things. Although blank CD-R and CD-RW media is tested at manufacturing facilities, such compact dick cannot be determined to be readable or writable until data is recorded to them. Thus there exists a need to make available to the average consumer a low-cost and reliable system that provides detailed error information that can be readily used to optimize the performance of a compact disk unit.
Those skilled in the art are fully aware that writing and reading data associated with compact disks is inherently error-prone because the pits on a compact disk are so small. For this reason, sophisticated error detection and correction codes are used. Typically such error correction and detection codes make use of redundancy and interleaving to ensure that errors can be corrected.
Error correction and detection is not, however, the cure-all in compact disks. The compact disk media does not operate in a vacuum, instead the compact disk media operates in conjunction with a disk motor, optics, and other associated hardware. Thus, where the integrity of the disk media is sound, errors can nonetheless occur if the accompanying hardware or software is defective.
The two primary features of the compact disk that can cause errors include pit geometry and physical defects. Pit geometry refers to the depth, width, length, and wall slope of the physical pits created in the disk. Although CD-R disks do not have pits, the recording process produces areas on the disk that function like pits which are subject to imperfections that cause errors. Physical defects include pinholes, black spots, bubbles and scratches. Poor pit geometry and physical defects can make it very difficult for the servo 110 mechanisms to read data properly; A determination can often be made as to whether problems are caused by pit geometry or local defects from error information. A burst of large errors confined to a small part of the disk is most likely caused by some kind of local disk defect. Large errors found over the entire disk or a large portion of the disk can be attributed to poor pit geometry. Large errors throughout the disk may also be indicative of a poorly optimized servo control system.
Error detection and correction codes can correct certain types of data errors. However, to the extent that errors can be minimized by optimizing a compact disk system, such error detection and correction codes will find reduced use resulting in an overall improvement of compact disk performance. For example, certain data errors may indicate the existence of a hardware problem as distinguished from an error encoded on the disk 102. Thus, a main purpose of the present invention is to prevent errors from ever occurring.
In view of the foregoing, it would be highly desirable to provide a technique for counting errors and for counting error rates in an optical compact disk storage system to facilitate operations and to reduce errors in the optical compact disk storage system.
One embodiment of the invention is a system for providing information on errors occurring in an optical compact disk unit used for reading data from an optical disk media. The system includes a demultiplexer that receives a stream of multiplexed error flag signals and outputs a stream of demultiplexed error flag signals. Coupled to the demultiplexer is a decoder that decodes at least a portion of the stream of demultiplexed error flag signals, detecting errors of a predetermined type. An error counter then keeps a count of the errors and a register stores the number of errors of the predetermined type.
Another embodiment of the present invention includes a threshold count register that stores a predetermined threshold count value and a comparator coupled to the threshold count register. When the error count exceeds the predetermined threshold count value, predetermined operations within the compact disk unit may be altered or halted. The predetermined operations may be altered to optimize hardware, software or firmware operations. Alternatively, the entire operation of the compact disk unit may be halted until any problems are corrected.
Another embodiment of the invention is a system for providing information on error rates occurring in an optical compact disk unit used for reading data from an optical disk media. The system includes an error detector that identifies the occurrence of an error in a stream of multiplexed error signals. Coupled to the detector is an error rate counter coupled to a first clocking signal such as a frame clocking signal. An error rate count register then calculates and stores an error rate count upon the occurrence of a second clocking signal such as a sector synchronization signal. Furthermore, the error rate is calculated over a time period proportional to a characteristic of the second clocking signal.
Another embodiment of the present invention includes a threshold rate register that stores a predetermined threshold rate value and a comparator coupled to the threshold rate register. When the error rate exceeds the predetermined threshold count value, predetermined operations within the compact disk unit may be altered or halted. The predetermined operations may be altered to optimize hardware, software or firmware operations. Alternatively, the entire operation of the compact disk unit may be halted until any problems are corrected.
By counting errors and generating error rates, serious or recurring problems within a compact disk unit, be it hardware, software or firmware related, can be detected and corrected. The occurrence of errors and the rate of such occurrences are used in the present invention as a parameter for enhancing the performance of a compact disk system.